var start = {};// 开始时间参数
var end = {};// 结束时间参数
var firstAvenue = false;// 判断是不是第一道工序
var fMacIdData;// 设备列表
var _id;// 产品工艺路线ID
var piesId;// 派工单ID
var fIcmoId="";
var fIsOutStock = 0;// 判断是否是第一道工序
var scdata;
var _fCardId;
var flag = true;
var getIds;// 获取批量派工的ID
var resetColumn = [];
var qitaos;
var _indexs;
var _fRestructQty,_srcFIcmoId,_dstFIcmoId,_srcCardId,_dstCardId; 
var _fIcmoIdss= -1;
var dingendatss;
/*
 * @Description: 预加载 @param :
 */
$(function (){
	resizeIframeHight();
	initCol();
// initPlanTable();
	initField();
	loadRecordName("PP",initPlanTable);
	pullDown();
	jeDate('#dispatchingfStartTime',{
		onClose : false,
		format : 'YYYY-MM-DD',
		minDate: function (that) {        	
        	return jeDate.nowDate({DD:0});
        }, // 设定最小日期为当前日期
        donefun: function(obj){
            end.minDate = obj.val; // 开始日选好后，重置结束日的最小日期
            jeDate("#dispatchingfEndTime",LinkageEndDate());
        }
	});
	jeDate('#dispatchingfEndTime',LinkageEndDate());
	var time = {
			onClose : false,
			format : 'YYYY-MM-DD',
			donefun : function(obj) {
				// end.minDate = obj.val; // 开始日选好后，重置结束日的最小日期
			}
		};
	jeDate('#wffFetchDate',{
		onClose : false,
		format : 'YYYY-MM-DD',
		minDate: function (that) {        	
        	return jeDate.nowDate({DD:0});
        }, // 设定最小日期为当前日期
	});
	var time = {
		onClose : false,
		format : 'YYYY-MM-DD',
		donefun : function(obj) {
			// end.minDate = obj.val; // 开始日选好后，重置结束日的最小日期
		}
	};
	/*
	 * jeDate('#startTime',time); jeDate('#endTime',time);
	 */
	jeDate('#batchDispatchingfStartTime',time);
	jeDate('#batchDispatchingfEndTime',time);
	/* jeDate('#fAuxDate',time); */
	// 点击Tab刷新表格
	$(".PP",parent.document).click(function(){
	  $('#planTable').bootstrapTable('refresh');
	});
	// 点击Tab刷新表格
	/*
	 * $(".PP",parent.document).click(function(){ getColumn("PP",initPlanTable); //
	 * $('#planTable').bootstrapTable('refresh'); // setTimeout(function(){ //
	 * if(_index != -1){ // $('#taskTable').bootstrapTable('check',_index); // } //
	 * },500); });
	 */
});
function initCol(){
	resetColumn.push({
		valign: 'middle',
		checkbox : true,
		edit : false,
		width : '2%'
	},{
		field : "fBillNo",
		align : 'left',
		valign: 'middle',
		sortable : true,
		title : '生产任务单',
		visible : true,
		width: '10%',
		must:true,// 是否是必选字段
		edit : false,
	},{
		field : "fNumber",
		align : 'left',
		valign: 'middle',
		sortable : true,
		title : '产品代码',
		visible : true,
		width: '10%',	
		edit : false,
	},{
		field : "fName",
		align : 'left',
		title : '产品名称',
		sortable : true,
		valign: 'middle',
		visible : true,
		width: '10%',	
		edit : false,
	},{
		field : "fModel",
		align : 'left',
		valign: 'middle',
		sortable : true,
		title : '规格型号',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fRwId",
		align : 'center',
		title : '任务单类型',		
		visible : false,
		width: '10%',
		hidden:true,
		edit : false,
	},{
		field : "fIcmoNote",
		align : 'left',
		valign: 'middle',
		title : '备注',
		edit : false,
		formatter : wodrdsFormat,
		visible : true,
		width: '10%',	
	},{
		field : "fExplanation",
		align : 'left',
		valign: 'middle',
		formatter : wodrdsFormat,
// sortable : true,
		title : '摘要',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '数量',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fStatus",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '状态',
		edit : false,
		visible : true,
		formatter:function(value){
			if(value == 1){// 是否外协格式化
				whether = "已下达";
			}else if(value == 5){
				whether = "待下达";
			}else if(value == 3){
				whether = "已完成";
			}
			return whether;
		},
		width: '10%',	
	},{
		field : "fBillerName",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '制单人',
		formatter : function(value,row,index){
			var str = "";
			if(value != null){
				index = value.indexOf('(');
				if(index != -1){
					str = value.substring(0,index);
					str = '<span title="'+value+'">'+str+'</span>';
				}else{
					str = value;
				}
			}
			return str;
		},		
		visible : true,
		width: '10%',
		edit : false,
	},{
		field : "fDate",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '制单日期',
		formatter : dateFormatter,
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fOperSN",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '工序号',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fOperName",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '工序</br>名称',
		formatter : wodrdsFormat,
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fDepName",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '工作中心',
		edit : false,
		visible : true,
		width: '10%',
	},{
		field : "fMacGroupName",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '设备组',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fIsOut",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '外</br>协',
		edit : false,
		formatter:function(value){
			var whether = "否";
			if(value == 1058){// 是否外协格式化
				whether = "是";
			}else if(value == 1059){
				whether = "否";
			}
			return whether;
		},
		visible : true,
		width: '10%',	
	},{
		field : "fNote",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '加工说明',
		formatter : wodrdsFormat,
// class:'colStyle',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "ppQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '投入数',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fDispatchQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '已派</br>工数',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fQtyFinish",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '已生</br>产数',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fRestructQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '改制数',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fQtyGood",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '良品数',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fAuxQtyScrap",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '工废',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fAuxQtyForItem",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '料废',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fOthQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '次品',
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fOperInStockQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '入库数',			
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fNotCheckNum",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '待检数',			
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "noDispatchQty",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '剩余</br>派工',
		edit : false,
		visible : true,
		width: '10%',	
		/*
		 * formatter:function(value,row,index){ return
		 * row.ppQty-row.fDispatchQty; }
		 */
	},{
		field : "fPlanCommitDate",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '排程计划</br>开始时间',
		formatter : dateFormatter,
		edit : false,
		visible : true,
		width: '10%',	
	},{
		field : "fPlanFinishDate",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '排程计划</br>结束时间',
		formatter : dateFormatter,
		edit : false,
		visible : true,
		width: '10%',	
	}, {
		field : "fDisPatchFlag",
		align : 'left',
		valign: 'middle',
// sortable : true,
		title : '有无派工数',
		visible : false,
		width: '10%',
		showColumn : false,// 自定义列中是否显示
	},{
		field : 'operate',// 如需导出execl field必填operate，否则操作行会被导出
		align : 'center',
		valign: 'middle',
		title : '操作',
		formatter : function(value,row,index){
			var dispatchingHide="",modifyDeviceHide = "",receiveHide = "" ,outHide = "",gaiHide="none";
			if(row.noDispatchQty==0){
				dispatchingHide = "none";
				outHide = "none";
			}else{
				dispatchingHide = "display";
				outHide = "display";
			}
			if(row.noDispatchQty!=0){
				gaiHide= "";
			}
			return '<button type="button" class="btn btn-default dispatching" style="font-size:12px;margin-right:5px;display:'+dispatchingHide+'">派工</button>' +
			'<button type="button" class="btn btn-default modifyDevice" style="font-size:12px;margin-right:5px;display:'+modifyDeviceHide+'">修改设备</button>'+
			/*
			 * '<button type="button" class="btn btn-default receive"
			 * style="font-size:12px;margin-right:5px;display:'+ receiveHide
			 * +'">接收</button>'+
			 */
			'<button type="button" class="btn btn-default out" style="font-size:12px;margin-right:5px;display:'+ outHide +'">委外派工</button>'+
			'<button type="button" class="btn btn-default printPies" style="font-size:12px;margin-right:5px;">派工详情</button>'+
			'<button type="button" class="btn btn-default ingai" style="font-size:12px;margin-right:5px;display:'+gaiHide+'">改制</button>';
		},
		events : operateEvents,
		edit : false,
		visible : true,
		width: '10%',
		must:true,// 是否是必选字段
		showSearch:false
	}
	);	
}
/*
 * @Description: 设置完工时间 @param :
 */
function LinkageEndDate() {
    return {
    	onClose : false,
        format: 'YYYY-MM-DD',
        minDate: function (that) {
            // that 指向实例对象
// var nowMinDate = jeDate.valText('#dispatchingfStartTime') == "" &&
// jeDate.valText(that.valCell) == "";
// return nowMinDate ? jeDate.nowDate({DD:0}) : end.minDate ;
        	var startTime = $('#dispatchingfStartTime').val();
        	return startTime == "" ? jeDate.nowDate({DD:0}) : startTime;
        }, // 设定最小日期为当前日期
        donefun: function(obj){
            start.maxDate = obj.val; // 将结束日的初始值设定为开始日的最大日期
        }
    };    
}
/*
 * @Description: 初始化生产任务表 @param :
 */
function initPlanTable(){
	$('#planTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("card/fDispatchCard.action"),// 请求后台的URL
		height : $(window).height()*0.97,// 行高
		method : "POST",// 请求方式
		// striped : true,//是否显示行间隔色
		cache : false,// 是否使用缓存，默认为true
		clickToSelect : true,// 是否启用点击选中行
// singleSelect : true,//是否单选
		pagination : true,// 是否显示分页
		pageNumber : 1,// 初始化加载第几页
		pageSize : 15,// 每页的记录行数
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页
		pageList : [ 15, 30, 60, 100, 'All'],// 可供选择的每页的行数
		rowStyle : function(row, index) {// 自定义样式，参数为：row：行数据，index：行下标
			var classes = [ 'success' ];
			if (parseFloat(row.noDispatchQty) > 0) {
				return {
					classes : classes[0]
				};
			}
			return {};
		},
		queryParams : function(params){// 传递参数
			var data= {};
			var sortField = params.sort;// 排序字段名
			var task = $("#taskStyle").val();
			if(value == 0){
				data.fStatus = $("#fStatus").val();// 状态
			}else{
				data.fStatus = 1;// 0为排程完未下达任务，1为已下达任务
			}
			if(sortField != "" && sortField != undefined){
				data.orderBy = sortField + " " + params.order;// 排序：要排序字段 +
				                                                 // 排序规则
			}
			if(task == 1){
				data.fIsZP = 1;
			}else if(task == 2){
				data.fIsSC = 1;
			}
			data.offset = params.offset;
			data.row = params.limit;
// data.fOrderBillNo = $("#fOrderBillNo").val();//销售单号
			/*
			 * data.fBillNo = $("#fBillNo").val();//生产任务单号 data.fNumber =
			 * $("#fNumber").val();//产品代码 data.fName = $("#fName").val();//产品名称
			 * data.fModel = $("#fModel").val();//规格型号 data.fOperName =
			 * $("#fOperName").val();//工序名称 data.fDepId =
			 * $("#workshopID").val();//工作中心
			 * 
			 * data.startTime = $("#startTime").val();//制单开始时间 data.endTime =
			 * $("#endTime").val();//制单结束时间 data.fBillerName =
			 * $("#fBillerName").val();//制单人 data.fAuxDate =
			 * $("#fAuxDate").val();//预装配时间
			 */          data.fDisPatchFlag = fDisPatchFlag;// 有无派工数
			data.sqlStr = sqlCombine;
			return data;
		},
		dataType : 'JSON',// 数据类型
		uniqueId : "id",// 每一行的唯一标识，一般为主键列
// sortable: true,//启用排序
// sortName: sortName,// 要排序的字段
// sortOrder: 'desc', // 排序规则
		columns : customColumn,
		/* fixedColumns: true, */
	    fixedNumber: 1,
		onClickRow: function (row,$element) {// 行单击
			scdata = row;
			_srcFIcmoId=row.fIcmoId;
			_srcCardId=row.id;
		},
		onLoadSuccess : function(data) {  
           console.log(data);
			$('#planTable').bootstrapTable('hideColumn', 'fRwId');
			hebing();
		},
		onPageChange : function(number, size){
			hebing();
		},
		onColumnSwitch : function(field, checked){// 切换列可见时触发
			hebing();
		}
	});
}
$('#planTable').on('click','.wordss',function(){
	console.log($('.wordss').attr('title'));
	swal_Tips_long($('.wordss').attr('title'));
})
//修改定额
$('#modifyding').click(function(){
	$('#dingeninputCardModal').modal('show');
})
//修改定额 table 请求
function modifyding(id){
	var dataJson=[];
	var daoData = [];
	var daojson = [];
	$.ajax({
		url : pathUrl("card/getMergeCardInfo.action"),
		type : "POST",
		dataType : "JSON",
		data : {
			'id':id
		},
		success : function(data) {
			$.each(data.rows,function(key,value){
				daoData = {
						"fPieceRate":value.fPieceRate,
						"fOper":value.fOper,
						"id":value.id,
						"fNote":value.fNote,
						"fOperSN":value.fOperSN,
				}
				daojson.push(daoData);
			});
			console.log(daojson);
			$('#daodingTable').bootstrapTable('load', daojson);
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
	$('#daodingTable').bootstrapTable('destroy').bootstrapTable({
		dataType : 'JSON',//数据类型
		uniqueId : "id",//每一行的唯一标识，一般为主键列
		columns : [{
			field : "fOperSN",
			align : 'left',
			valign: 'middle',
			title : '工序号',
			edit : false
		}, {
			field : "fOper",
			align : 'left',
			valign: 'middle',
			title : '工序名称',
			edit : false
		}, {
			field : "fNote",
			align : 'left',
			valign: 'middle',
			title : '加工说明',
			edit : false
		},{
			field : "fPieceRate",
			align : 'left',
			valign: 'middle',
			title : '定额',
			edit : true,
		}]
	});
	
}
$('#confirmmodify').click(function(){
	let datas = $("#daodingTable").bootstrapTable('getData');//获取表格的所有
	//获取需要传的
	let daoDatass=[];
	let daojsonss=[];
	$.each(datas,function(key,value){
		daoDatass = {
				"fPieceRate":value.fPieceRate,
				"id":value.id,
		}
		daojsonss.push(daoDatass);
	});
	dingendatss=daojsonss;
	//获取需要展示的
	let daoDatassin='';
	$.each(datas,function(key,value){
		daoDatassin+=value.fOperSN+':'+value.fPieceRate+'|';
	});
	$('#dispatchingfPieceRate').val(daoDatassin);
	console.log(dingendatss);
	$('#dingeninputCardModal').modal('hide');
})

/*
 * @Description: 操作事件 @param :
 */
window.operateEvents= {
	'click .dispatching' : function(e, value, row, index) {// 派工
		// var data =
		// $("#taskTable").bootstrapTable('getSelections')[0];//获取选中任务单里的数据
// console.log(scdata)
// data = scdata;
		data = row;
		var whether;
		var time = dateFormatter(data.fPlanCommitDate) + ' 至 ' + dateFormatter(data.fPlanFinishDate);// 计划时间格式化
		if(row.fIsOut == 1058){// 是否外协格式化
			whether = "是";
		}else if(row.fIsOut == 1059){
			whether = "否";
		}
		console.log(data.id);
		modifyding(data.id);
		//modifyding(data.id);
// console.log(row);
		loadData(data,'#dispatchingForm');
		loadData(row,'#dispatchingForm');
		$("#dispatchingfOperName").val(row.fOperName);
		$("#dispatchingfDepid").val(row.fDepId);
		$("#dispatchingfPlanDate").val(time);
		$("#dispatchingfIsOut").val(whether);
		$("#dispatchingnoDispatchQty").val(row.noDispatchQty);
		$("#dispatchingfStartTime").val(jeDate.timeStampDate(Math.round(new Date()/1000),'YYYY-MM-DD'));
		$("#dispatchingfEndTime").val(jeDate.timeStampDate(Math.round(new Date()/1000)+86400,'YYYY-MM-DD'));
		if(data.fIsFirstOp == 1){// 如果是第一道工序
			//齐套数请求
			console.log(data.fIcmoId);
			$.ajax({
				url : pathUrl("dispatch/getNumSet.action"),
				type : "POST",
				dataType : "JSON",
				data : {
					'fIcmoId':data.fIcmoId
				},
				success : function(data) {
					qitaos=data;
					console.log(qitaos);
				},
				error : function(request) {
					swal_Tips_Error();
				},
				complete: function () {
				}
			});
			_indexs=0;
			$("#showCheckBox").show();
			$("#dispatchingfIsOutStock").prop('checked',true);
			setTimeout(function(){
				$('#qitaos').val(qitaos);
			},2000);
// firstAvenue = true;
		}else{
			$("#showCheckBox").hide();
			$("#dispatchingfIsOutStock").prop('checked',false);
		}
		$('#dispatchingModal').modal('show');
	},
	'click .modifyDevice' : function(e, value, row, index) {// 修改设备
		_id = row.id;
		initModifyMachine();
		initMachine(2,row.fMacGroupId);
		initPiesTable();
		$('#modifyModal').modal('show');
	},
	'click .printPies':function(e, value, row, index) {// 打印按钮点击事件
		_fCardId = row.id;
		initPrintTable();
		$("#printModal").modal('show');
// window.open(pathUrl("DS?fCardId="+ row.id +"&type=2"));
	},
	'click .ingai' : function(e, value, row, index) {//点击事件
	    gaiTable();
	    xuTable();
	    $("#gainumbermodal").modal('show');
	},
	'click .revoke':function(e, value, row, index) {// 撤销按钮点击事件
		var ftype = row.ftype,URL;
		if(ftype == 1){
			URL = pathUrl("dispatch/removeDispatchWork.action");
		}else if(ftype == 2){
			URL = pathUrl("revoke/revokeSubcOut.action");
		}
		showSwal(
			'撤销',
			'您确定撤销吗？',
			'是的，确定撤销',
			function(result){
				if(result.value){
					showLoading();// 显示正在提交中
					$.ajax({
						url : URL,
						type : "POST",
						dataType : "JSON",
						data : {
							'id':row.id
						},
						success : function(data) {
							// console.log(data);
							if (data.code == "0000") {
								initPrintTable();
								$('#planTable').bootstrapTable('refresh');
								swal_Tips_Short(data.message);
							} else if (data.code == "9999") {
								swal_Tips(data.message);
							}
						},
						error : function(request) {
							swal_Tips('系统出错!');
							swal_Tips_Error();
						},
						complete: function () {
						}
					});
				}
			})
	},
	'click .print':function(e, value, row, index) {// 打印派工单
		if(row.ftype == 1){
			window.open(pathUrl("DS?fDisId="+ row.id +"&type=0"));
		}else if(row.ftype == 2){
			window.open(pathUrl("OL?id="+ row.id));
		}
		
// window.open(pathUrl("DS?fCardId="+ row.id +"&type=2"));
	},
	'click .out' : function(e, value, row, index) {// 委外转出
// console.log(row)
// var difference = parseFloat(row.ppQty) - parseFloat(row.subcOutQty);
		$(".clean_c").val("");
		loadData(row,"#inOutForm");
// if(index == 0){
// $("#wfnoDispatchQty").val(difference);
// $("#wffQty").val(difference);
// }else{
// }
		if(row.fIsFirstOp == 1){// 如果是首道工序
			$("#showWFCheckBox").show();
			$("#wffIsOutStock").prop('checked',true);
// firstAvenue = true;
		}else{
			$("#showWFCheckBox").hide();
			$("#wffIsOutStock").prop('checked',false);
		}
		$("#wfnoDispatchQty").val(row.noDispatchQty);
		$("#wffQty").val(row.noDispatchQty);
		$("#inOutModal").modal('show');
	}
//	,
//	'click .receive' : function(e, value, row, index) {// 接收
// console.log(row)
//		$.ajax({
//			url : pathUrl("operBlotter/operBlotter.action"),
//			type : "POST",
//			dataType : "JSON",
//			data : {'fTargetId' : row.id},
//			success : function(data) {
// console.log(data.rows[0]);
//				$(".clean_c").val("");
//				loadData(data.rows[0],"#receiveForm");
//				$("#receivefActualQty,#receivelQty").val(data.rows[0].kQty);
//				_id = data.rows[0].id;
//			},
//			error : function(request) {
//				swal_Tips_Error();
//			}
//		});
//		$("#receiveModal").modal('show');
//	}
};
/*
 * @Description: 派工模态框显示后操作：派工数量获得焦点，加载设备列表 @param :
 */
$('#dispatchingModal').on('shown.bs.modal', function () {
	initMachine(1);
	var value = $("#dispatchingfMacId option:selected").text();
	var str = value.substring(0,4);
	$("#dispatchingfTargetQty").focus();
	if(str == "数控锯床"){
		$("#fDiscountPieceRate").val(30);
	}else if(str == "数控车床"){
		$("#fDiscountPieceRate").val(75);
	}else if ($('#dispatchingfOperName').val().indexOf('台架') != -1) {
		$('#fDiscountPieceRate').val(20);
	}else{
		$("#fDiscountPieceRate").val(100);
	}
});
/*
 * @Description: 派工模态框隐藏后操作：清空数据 @param :
 */
$('#dispatchingModal').on('hidden.bs.modal', function () {
	$(".clean_c").val('');// 清空派工表里的数据
	$("#dispatchingfMacId").selectpicker('refresh');
});

/*
 * @Description: 派工模态框确定按钮点击事件 @param :
 */
$("#confirm_pg").click(function(){
	var fIsOperInStock = 0;
	var fIsOutStock = 0;
	var noDispatchQty = parseFloat($("#dispatchingnoDispatchQty").val());// 获取剩余可派工数
	var fDiscountPieceRate = parseFloat($("#fDiscountPieceRate").val());//定额折扣
	var fTargetQty = parseFloat($("#dispatchingfTargetQty").val());// 获取派工数
	var fMacId = $("#dispatchingfMacId").val();// 获取设备ID
	var _fOperName = $("#dispatchingfOperName").val() //获取工序名称
	var _qitaos = parseFloat($("#qitaos").val());//获取齐套数
	var fStartTime = new Date($('#dispatchingfStartTime').val().replace(/-/g,   "/"));// 开工时间
	var fEndTime = new Date($('#dispatchingfEndTime').val().replace(/-/g,   "/"));// 完工时间
	var fMachine = $('#dispatchingfMacId option:selected').text();
	if($("#dispatchingfWorker").val() == ""){
		swal_Tips('请输入员工ID！');
		return false;
	}
	if($("#dispatchingfWorkerName").val() == ""){
		swal_Tips('请输入正确的员工ID！');
		return false;
	}
	if(isNaN(fTargetQty)){
		swal_Tips('请输入正确的派工数！');
		return false;
	}
	if(fTargetQty == 0){
		swal_Tips('派工数不能为0！');
		return false;
	}
	if(fDiscountPieceRate > 1000 || fDiscountPieceRate <0){
		swal_Tips('定额折扣应为0~1000！');
		return false;
	}
	if(fTargetQty > noDispatchQty){
		swal_Tips('派工数不能大于剩余可派工数！');
		return false;
	}
	if(fStartTime == "Invalid Date"){
		swal_Tips('请选择开工时间！');
		return false;
	}
	if(fEndTime == "Invalid Date"){
		swal_Tips('请选择完工时间！');
		return false;
	}
	if(fStartTime > fEndTime){
		swal_Tips('开工时间不能晚于完工时间！');
		return false;
	}
	if(fMacId == ""){
		swal_Tips('请选择设备！');
		return false;
	}
	if($('#dispatchingfIsOperInStock').is(':checked')) {
		fIsOperInStock = 1;
	}
	if($('#dispatchingfIsOutStock').is(':checked')) {
		fIsOutStock = 1;
	}
	console.log($.param({'fIsOperInStock': fIsOperInStock}));
// console.log($("#dispatchingForm :text,#dispatchingForm
// select,#dispatchingForm :hidden").not($('.noPass')).serializeObject() + '&' +
// $.param({'fIsOutStock': fIsOutStock})
// + '&' + $.param({'fIsOperInStock': fIsOperInStock}) + '&' +
// $.param({'fStartTime': fStartTime}) + '&' + $.param({'fEndTime': fEndTime}))
	if(_qitaos<fTargetQty){	
		if(_indexs==0){
			showSwalqi(
					'派工',
					'您确认派工吗？(齐套数小于派工数)',
					'取消 ',
					'是的，确定强制派工',
				function(result){// isConfirm 点击确定按钮，参数true/false
					if(result.value){
		// $("#confirm").html("正在提交中。。。");
		// $("#confirm").attr("disabled",true);
						showLoading();// 显示正在提交中
						$.ajax({
							url : pathUrl("dispatch/insert.action"),
							type : "POST",
							dataType : "JSON",
							data : $("#dispatchingForm :text,#dispatchingForm select,#dispatchingForm :hidden").not($('.noPass')).serializeObject() + '&' + $.param({'fIsOutStock': fIsOutStock})
									+ '&' + $.param({'fIsOperInStock': fIsOperInStock}) +  '&' + $.param({'fStartTime': fStartTime}) +  '&' + $.param({'fEndTime': fEndTime}) +  '&' + $.param({'fMachine': fMachine})+'&'+$.param({'datas': JSON.stringify(dingendatss)}),
									
							success : function(data) {
		// console.log(data)	
								dingendatss='';
								if (data.code == "0000") {
									$("#dispatchingModal").modal('hide');
									$('#planTable').bootstrapTable('refresh');
		// initPlanTable();
									swal_Tips_Short(data.message);
		// if(firstAvenue){
		// }						
									if(_fOperName == '油漆'||_fOperName == '包装'){
										window.open(pathUrl("DSY?fDisId="+ data.dataset+"&type=0"));
									}else{
										window.open(pathUrl("DS?fDisId="+ data.dataset+"&type=0"));
									}
								//	window.open(pathUrl("DS?fDisId="+ data.dataset+"&type=0"));
								} else if (data.code == "9999") {
									swal_Tips(data.message);
								}
							},
							error : function(request) {
								dingendatss='';
								swal_Tips_Error();
							},
							complete : function () {
		// $("#confirm").html("确定");
		// $("#confirm").attr("disabled",false);
							}
						});
					}
				}
			);
		}
	}
	else{
		showSwal(
				'派工',
				'您确认派工吗？',
				'是的，确定派工',
				function(result){// isConfirm 点击确定按钮，参数true/false
					if(result.value){
		// $("#confirm").html("正在提交中。。。");
		// $("#confirm").attr("disabled",true);
						showLoading();// 显示正在提交中
						$.ajax({
							url : pathUrl("dispatch/insert.action"),
							type : "POST",
							dataType : "JSON",
							data : $("#dispatchingForm :text,#dispatchingForm select,#dispatchingForm :hidden").not($('.noPass')).serializeObject() + '&' + $.param({'fIsOutStock': fIsOutStock})
									+ '&' + $.param({'fIsOperInStock': fIsOperInStock}) +  '&' + $.param({'fStartTime': fStartTime}) +  '&' + $.param({'fEndTime': fEndTime}) +  '&' + $.param({'fMachine': fMachine})+'&'+$.param({'datas': JSON.stringify(dingendatss)}),
							success : function(data) {
		// console.log(data)	
								dingendatss='';
								if (data.code == "0000") {
									$("#dispatchingModal").modal('hide');
									$('#planTable').bootstrapTable('refresh');
		// initPlanTable();
									swal_Tips_Short(data.message);
		// if(firstAvenue){
		// }						
									if(_fOperName == '油漆'||_fOperName == '包装'){
										window.open(pathUrl("DSY?fDisId="+ data.dataset+"&type=0"));
									}else{
										window.open(pathUrl("DS?fDisId="+ data.dataset+"&type=0"));
									}
									//window.open(pathUrl("DS?fDisId="+ data.dataset+"&type=0"));
								} else if (data.code == "9999") {
									swal_Tips(data.message);
								}
							},
							error : function(request) {
								dingendatss='';
								swal_Tips_Error();
							},
							complete : function () {
		// $("#confirm").html("确定");
		// $("#confirm").attr("disabled",false);
							}
						});
					}
				}
			);
	}
});
/*
 * @Description: 初始化设备下拉列表 @param : type 类型：1为派工设备下拉，2为修改设备里的设备下拉 @param : id
 * 设备组id
 */
function initMachine(type,id){
	var fGroupId = parseInt($("#dispatchingfMacGroupId").val());
	if(type == 2){
		fGroupId = id;
	}
	if(type == 3){
		fGroupId = parseInt($("#batchDispatchingfMacGroupId").val());
	}
	$.ajax({
		url : pathUrl("machine/findByCondition.action"),
		type : 'POST',
		dataType : "JSON",
		async : false,
		data : {
			// "fRunStatus": 0,//0未生产，1正在生产
			// "fRepairStatus" : 0,//维修状态
			"row" : 100000,
			"fGroupId" : fGroupId
		},
		success : function(data) {
// console.log(data)
			var data = data.rows;
			if(type == 1 || type == 3){
				var option = "";
				$("#dispatchingfMacId,#batchDispatchingfMacId").empty();
				option = '<option value="">' + "请选择" + '</option>';
				for (x in data) {
					if($("#dispatchingfMacGroupId,#batchDispatchingfMacGroupId").val() == 58){
						if( $("#dispatchingfOperName,#batchDispatchingfMacGroupName").val() == "清洗" ){
							if( data[x].id == '00000034_00000469'){
								option += '<option value="' + data[x].id + '" selected="selected">' + data[x].fName + '</option>';
							}else{
								option += '<option value="' + data[x].id + '">' + data[x].fName + '</option>';
							}
						}else if(($("#dispatchingfDepName").val() == "试车车间") && (data[x].fName).indexOf("试车") != -1){
							option += '<option value="' + data[x].id + '" selected="selected">' + data[x].fName + '</option>';
						}else{
							option += '<option value="' + data[x].id + '">' + data[x].fName + '</option>';
						}
					}else{
						option += '<option value="' + data[x].id + '">' + data[x].fName + '</option>';
					}
				}
				$("#dispatchingfMacId,#batchDispatchingfMacId").html(option);
				$('#dispatchingfMacId,#batchDispatchingfMacId').selectpicker('refresh');
			}else{
				fMacIdData = data;
			}
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
}

/*
 * @Description: 员工ID输入框输入事件：输入员工ID后，自动带出员工姓名 @param :
 */
$("#dispatchingfWorker").keyup(function(event){
	$.ajax({
		url : pathUrl("emp/findByCondition.action"),
		type : 'GET',
		dataType : "JSON",
		data : {
			"row" : 100000,
			"fNumber" : $("#dispatchingfWorker").val()
		},
		success : function(data) {
			var str = "";
			if(data.rows != null && data.rows.length == 1){// 查询到数据并且只有一条数据，才写入员工姓名
				str = data.rows[0].fName;
				$("#dispatchingfTargetQty").focus();
			}
			$("#dispatchingfWorkerName").val(str);
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
});

/*
 * @Description: 初始化开工记录表 @param :
 */
function initPiesTable() {
	$('#piesTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("dispatch/findByCondition.action"),// 请求后台的URL
		// height : $(window).height() - 200,//行高
		method : "POST",// 请求方式
		cache : false,// 是否使用缓存，默认为true
		pagination : true,// 是否显示分页
		pageNumber : 1,// 初始化加载第几页
		pageSize : 10,// 每页的记录行数
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
		pageList : [ 10, 25, 50, 100 ],// 分页方式：client客户端分页，server服务端分页
		queryParams : function(params) {// 传递参数
			var data= {}, fWorker;
			data.offset = params.offset;
			data.row = params.limit;
			data.fCode = $("#modifyfCode").val();
			data.fMacId = $("#modifyDdevice").val();
			data.fCardId = _id;
			// data.sortOrder = params.order;//排序
			// data.sortName = params.sort;//排序
			return data;
		},
		dataType : 'JSON',// 数据类型
		uniqueId : "id",// 每一行的唯一标识，一般为主键列
		columns : [/*
					 * { checkbox : true },
					 */{
			field : "fCode",
			align : 'left',
			valign: 'middle',
			title : '派工单号',
			edit: false
		}, {
			field : "fMacId",
			align : 'left',
			valign: 'middle',
			title : '设备',
			edit : {
				type : 'select',// 下拉框
			    data : fMacIdData,
			    valueField : 'id',
			    textField : 'fName',
			    onSelect : function(val,rec){
			    	$.ajax({
			    		url : pathUrl("dispatch/updateMachine.action"),
			    		type : 'POST',
			    		dataType : "JSON",
			    		async : false,
			    		data : {
			    			"fMacId" : val,
			    			"fMachine" : rec.fName,
			    			"id" : piesId
			    		},
			    		success : function(data) {
			    			if (data.code == "0000") {
			    				$('#piesTable').bootstrapTable('refresh');
			    				initModifyMachine();
							} else if (data.code == "9999") {
								swal_Tips(data.message);
							}
			    		},
			    		error : function(request) {
			    			swal_Tips_Error();
			    		}
			    	});
			    }
			}
		}, {
			field : "fTargetQty1",
			align : 'left',
			valign: 'middle',
			title : '派工数量',
			formatter : function(value,row,index){
				return parseFloat(row.fTargetQty) - parseFloat(row.fQty);
			},
			edit: false
		},  {
			field : "fTime",
			align : 'left',
			valign: 'middle',
			title : '时间',
			formatter : function(value,row,index){
				var str = "";
				if(row.fStartTime != null){
					str = dateFormatter(row.fStartTime)+ ' 至 ' +dateFormatter(row.fEndTime);
				}
				return str;
			},
			edit: false
		}],
		onClickRow : function(row, $element) {// 行单击
// console.log(row)
			piesId = row.id;
		}
	});
}
/*
 * @Description: 初始化派工设备查询 @param :
 */
function initModifyMachine(){
	$.ajax({
		url : pathUrl("dispatch/getMac.action"),
		type : 'POST',
		dataType : "JSON",
		async : false,
		data : {
			"fCardId" : _id
		},
		success : function(data) {
			var option = "";
			$("#modifyDdevice").empty();
			option = '<option value="">' + "请选择" + '</option>';
			for (x in data) {
				option += '<option value="' + data[x].fMacId + '">' + data[x].fMachine + '</option>';
			}
			$("#modifyDdevice").html(option);
			$('#modifyDdevice').selectpicker('refresh');
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
}
/*
 * @Description: 查询按钮点击事件 @param :
 */
$("#queryold").click(function(){
	initPlanTable();
	if(!flag){
		$(".fixed-table-toolbar .columns").css('margin-bottom', '42px');// 设置bootstrap-table选择列和表之间的距离
	}else{
		$(".fixed-table-toolbar .columns").css('margin-bottom', '10px');
	}
});
/*
 * @Description: 修改设备模态框重置按钮点击事件 @param :
 */
$("#resetting_modify").click(function(){
	$("#modifyfCode,#modifyDdevice").val("");
	$('#modifyDdevice').selectpicker('refresh');
	$('#piesTable').bootstrapTable('refresh');
});
/*
 * @Description: 初始化工作中心下拉框里的数据 @param :
 */
function pullDown(){
	$.ajax({// 生产车间下拉
		url : pathUrl("workCenter/getworkCenterIdAndName.action"),
		type : 'GET',
		dataType : "JSON",
		success : function(data) {
			// 生产车间下拉选里写值
			var option = "";
			$("#workshopID").empty();
			option = '<option value="">' + "请选择" + '</option>';
			for (x in data) {
				option += '<option value="' + data[x].text + '">' + data[x].value + '</option>';
			}
			$("#workshopID,#workshopIDM").html(option);
			$('#workshopID,#workshopIDM').selectpicker('refresh');
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
}
/*
 * @Description: 委外转出模态框显示后操作：委外数量获得焦点 @param :
 */
$('#inOutModal').on('shown.bs.modal', function () {
	$("#fQty").focus();
});
/*
 * @Description: 委外转出模态框确定按钮点击事件 @param :
 */
$("#confirm_out").click(function(){
// fIcmoId任务单ID
	var _fIsOutStock = 0;
	var _fQty = parseFloat($("#wffQty").val());// 委外数量
	var _num = parseFloat($("#wfnoDispatchQty").val());// 可转出数
	var _fSupplierID = $("#wffSupplierID").val();// 委外单位ID
	var _fFetchDate = new Date($('#wffFetchDate').val().replace(/-/g,   "/"));// 交货日期
	var _empCardNoOut = $("#wfempCardNoOut").val();// 转出人ID
	var _turnOutP = $("#wfturnOutP").val();// 转出人姓名
	if(_num == 0){
		swal_Tips("没有可转出数！");
		return false;
	}
	if(isNaN(_fQty)){
		swal_Tips("请输入委外数量！");
		return false;
	}
	if(_fQty == 0){
		swal_Tips("委外数量不能为0！");
		return false;
	}
	if((_num - _fQty) < 0){
		swal_Tips("委外数量不能大于可转出数量！");
		return false;
	}
	if(_fSupplierID == ""){
		swal_Tips("请选择委外单位！");
		return false;
	}
	if(_fFetchDate == "Invalid Date"){
		swal_Tips("请选择交货日期！");
		return false;
	}
	if(_empCardNoOut == ""){
		swal_Tips("转出人ID不能为空！");
		return false;
	}
	if(_turnOutP == ""){
		swal_Tips("转出人姓名不能为空");
		return false;
	}
	if($('#wffIsOutStock').is(':checked')) {
		_fIsOutStock = 1;
	}
// console.log(_fIsOutStock);
// console.log($("#inOutForm :text,#inOutForm select,#inOutForm
// :hidden").not($('.noPass')).serializeObject()+ '&' + $.param({'fFetchDate':
// _fFetchDate}));
	showSwal(
		"转出",
		"您确定转出吗？",
		"是的，确定转出",
		function(result){// isConfirm 点击确定按钮，参数true/false
			if(result.value){
				showLoading();// 显示正在提交中
				$.ajax({
					url : pathUrl("subcout/subcOutOper.action"),
					type : "POST",
					dataType : "JSON",
					data : {
						'fIcmoId' : $("#wffIcmoId").val(),
						'fQty' : _fQty,
						'fSupplierID' : _fSupplierID,
						'fSupplierName' : $("#wffSupplierName").val(),
						'fOperSN' : $("#wffOperSN").val(),
						'price' : $("#wfprice").val(),
						'fFetchDate' : _fFetchDate,
						'fWorker' : _empCardNoOut,
						'fIsOutStock' : _fIsOutStock
					},
					success : function(data) {
// console.log(data);
						if (data.code == "0000") {
							$('#planTable').bootstrapTable('refresh');
							$("#inOutModal").modal('hide');
							swal_Tips_Short(data.message);
// (data.dataset)1002
							window.open(pathUrl("OL?id="+ data.dataset));
						} else if (data.code == "9999") {
							swal_Tips(data.message);
						}
					},
					error : function(request) {
						swal_Tips_Error();
					},
					complete: function () {
					}
				});
			}
		}
	);
});
/*
 * @Description: 委外单位模糊查询 @param :
 */
$('#wffSupplierName').typeahead({
    ajax: {
        url: pathUrl("supplier/getSupplierList.action"),
        timeout: 300,// 延时
        method: 'post',// 一定要小写
        triggerLength: 1,// 输入几个字符之后，开始请求
        loadingClass: null,// 加载数据时, 元素使用的样式类
        preDispatch: null,// 发出请求之前，调用的预处理方法
        preProcess: null// Ajax 请求完成之后，调用的后处理方法
    },
    display: "fName",     // 默认的对象属性名称为 name 属性
    val: "fItemID",           // 默认的标识属性名称为 id 属性
    items: '8',			// 最多显示项目数量
    itemSelected: function (item, val, text) {      // 当选中一个项目的时候，回调函数
    	$("#wffSupplierID").val(val);
    }
});
/*
 * @Description: 输入员工id事件 @param :
 */
$("#wfempCardNoOut").keyup(function(event){
	searchName();
});
/*
 * @Description: 查询员工姓名 @param :
 */
function searchName(){
	$.ajax({
		url : pathUrl("emp/findByCondition.action"),
		type : 'GET',
		dataType : "JSON",
		data : {
			"row" : 100000,
			"fNumber" :  $("#wfempCardNoOut").val()
		},
		success : function(data) {
			var str = "";
			if(data.rows != null && data.rows.length == 1){// 查询到数据并且只有一条数据，才写入员工姓名
				str = data.rows[0].fName;
// $("#dispatchingfTargetQty").focus();
			}
			$("#wfturnOutP").val(str);
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
}
/*
 * @Description: 接收模态框显示后，接收前实际数量输入框获得焦点 @param :
 */
$('#receiveModal').on('shown.bs.modal', function () {
	$("#receivefActualQty").focus();
});
/*
 * @Description: 接收模态框显示后操作：质检员卡号获得焦点 @param :
 */
$('#receiverModal').on('shown.bs.modal', function () {
	$("#receivefWorker").focus();
});
/*
 * @Description: 接收模态框隐藏后，清空质检员卡号 @param :
 */
$('#receiverModal').on('hidden.bs.modal', function () {
	$("#receivefWorker").val("");
});
/*
 * @Description: 接收模态框按钮点击事件 @param :
 */
//$("#confirm_re").click(function(){
//	var kQty = parseFloat($("#receivekQty").val());
//	var fActualQty = $("#receivefActualQty").val();
//	var lQty = $("#receivelQty").val();
//	if(fActualQty == ""){
//		swal_Tips("接收前实际数量不能为空！");
//		return false;
//	}
//	if(lQty == ""){
//		swal_Tips("接收数量不能为空！");
//		return false;
//	}
//	fActualQty = parseFloat(fActualQty);
//	lQty = parseFloat(lQty);
//	if(isNaN(fActualQty)){
//		swal_Tips("请输入正确的接收前实际数量！");
//		return false;
//	}
//	if(isNaN(lQty)){
//		swal_Tips("请输入正确的接收数量！");
//		return false;
//	}
//	if(fActualQty == 0){
//		swal_Tips("接收前实际数量不能为0！");
//		return false;
//	}
//	if(lQty == 0){
//		swal_Tips("接收数量不能为0！");
//		return false;
//	}
//	if((kQty - fActualQty) < 0){
//		swal_Tips("接收前实际数量不能大于可接收数！");
//		return false;
//	}
//	if((kQty - lQty) < 0){
//		swal_Tips("接收数量不能大于可接收数！");
//		return false;
//	}
//	data.fActualQty = fActualQty;
//	data.lQty = lQty;
//	data.id = _id;
//// fnReceive();
//	$("#receiveModal").modal('hide');
//	$("#receiverModal").modal('show');
//});
/*
 * @Description: 接收人模态框輸入完接收人卡号按回车事件 @param :
 */
$("#receivefWorker").on("keydown",function(e) {
	if (event.keyCode == "13") {// keyCode=13是回车键
		fnReceive();
	}
});
/*
 * @Description: 接收人模态框确定的按钮点击事件 @param :
 */
$("#confirm_receive").click(function(){
	fnReceive();
});
/*
 * @Description: 接收方法 @param :
 */
function fnReceive(){
	var receivefWorker = $("#receivefWorker").val();
	if(receivefWorker == ""){
		swal_Tips("请输入接收人卡号！");
		return false;
	}
	data.fWorker = receivefWorker;
	// console.log(data)
	$.ajax({
		url : pathUrl("operBlotter/enpOperBlotter.action"),
		type : "POST",
		dataType : "JSON",
		data : data,
		success : function(data) {
			if(data.code == "0000"){
				initPlanTable();
				$("#receiverModal").modal('hide');
				
				swal_Tips_Short(data.message);
			}else{
				swal_Tips(data.message);
			}
		},
		error : function(request) {
			swal_Tips_Error();
		}
	});
}
/*
 * 合并单元格函数
 * 
 */
function hebing(){
	var msg = $('#planTable').bootstrapTable('getData');
	if(msg==""){
		return false;
	}
	var bh=msg[0].fBillNo;
	var index = 0;
	var z;
	for(z= 1;z<msg.length;z++){
		var bhx = msg[z].fBillNo;
		if(bhx != bh){
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fBillNo', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fNumber', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fName', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fModel', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fQty', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fStatus', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fBillerName', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fDate', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fIcmoNote', rowspan: z - index});
			$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fExplanation', rowspan: z - index});
			bh=bhx;
			index = z;
		}
	}
	if(z == msg.length){
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fBillNo', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fNumber', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fName', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fModel', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fQty', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fStatus', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fBillerName', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fDate', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fIcmoNote', rowspan: z - index});
		$('#planTable').bootstrapTable('mergeCells', {index: index, field: 'fExplanation', rowspan: z - index});
	}
	$("#planTable tr td").each(function(){// 遍历表里的td
		var index = $(this).attr('rowspan');// 获取是几行合并的
		var $this = $(this).parent();// 获取父节点
		if(index != undefined && index != 1){
			for(var x=1;x<index;x++){// 获取合并行的最后一行
				$this = $this.next();
			}
			$(this).css({'borderBottom':'4px solid'});
			$this.css({'borderBottom':'4px solid'});
		}
		if(index == 1){
			$(this).siblings().css({'borderBottom':'4px solid'});
		}
    });
}
/*
 * 重置按钮
 */
$("#resetting").click(function(){
	$(".clean_C").val("");
	$("#workshopID,#taskStyle,#fDisPatchFlag").selectpicker('refresh');
	initPlanTable();
	if(!flag){
		$(".fixed-table-toolbar .columns").css('margin-bottom', '42px');// 设置bootstrap-table选择列和表之间的距离
	}else{
		$(".fixed-table-toolbar .columns").css('margin-bottom', '10px');
	}
});
/*
 * @Description:查询条件按回车事件 @param :
 */
$("#fBillNo,#fOperName,#fModel,#fNumber,#fBillerName").keypress(function(event){
	if(event.keyCode == "13"){
		initPlanTable();
		if(!flag){
			$(".fixed-table-toolbar .columns").css('margin-bottom', '42px');// 设置bootstrap-table选择列和表之间的距离
		}else{
			$(".fixed-table-toolbar .columns").css('margin-bottom', '10px');
		}
	}
});
/*
 * @Description: 初始化打印列表 @param :
 */
function initPrintTable(){
	$('#printTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("dispatch/printCardList.action"),// 请求后台的URL
// height : 242,//行高
		method : "POST",// 请求方式
		cache : false,// 是否使用缓存，默认为true
		pagination : true,// 是否显示分页
		pageNumber : 1,// 初始化加载第几页
		pageSize : 5,// 每页的记录行数
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页
		pageList : [ 5, 15, 30, 60, 100, 'All'],// 可供选择的每页的行数
		queryParams : function(params){// 传递参数
			var data= {};
			data.offset = params.offset;
			data.row = params.limit;
			data.fCardId = _fCardId;
			data.orderBy = "tem.fDate desc";
			return data;
		},
		dataType : 'JSON',// 数据类型
		uniqueId : "id",// 每一行的唯一标识，一般为主键列
		columns : [
		{
			field : "fCode",
		    align : 'left',
		    valign: 'middle',
// sortable : true,
		    title : '派工单号',
			edit : false
		},{
		    field : "fTargetQty",
		    align : 'left',
		    valign: 'middle',
// sortable : true,
		    title : '派工数量',
			edit : false
		},{
		    field : "fMachine",
		    align : 'left',
		    valign: 'middle',
// sortable : true,
		    title : '设备',
			edit : false
		},{
		    field : "fDate",
		    align : 'left',
		    valign: 'middle',
// sortable : true,
		    title : '派工时间',
		    formatter : timeFormatter,
			edit : false
		},{
		    field : 'operate',// 如需导出execl field必填operate，否则操作行会被导出
		    align : 'center',
		    valign: 'middle',
		    title : '操作',
		    formatter : function(value,row,index){
		    	 return '<button type="button" class="btn btn-default revoke" style="font-size:12px;margin-right:10px;">撤销</button>'+
			        '<button type="button" class="btn btn-default print" style="font-size:12px;">打印</button>';
		    },
		    events : operateEvents,
			edit : false
		 }],
		 onClickRow: function(data){
// console.log(data)
		 }
	});
}
/*
 * @Description: 打印空派工单按钮点击事件 @param :
 */
$("#printNullPies").click(function(){
	window.open(pathUrl("DS?fCardId="+ _fCardId +"&type=2"));
})
/*
 * @Description: more按钮点击事件 @param :
 */
$("#more").click(function(){
	if(flag){
		$("#more").text("隐藏");
		$(".fixed-table-toolbar .columns").css('margin-bottom', '42px');// 设置bootstrap-table选择列和表之间的距离
		$("#extend").show();
		flag = false;
	}else{
		$("#more").text("更多");
		$(".fixed-table-toolbar .columns").css('margin-bottom', '10px');
		$("#extend").hide();
		flag = true;
	}
	$('#planTable').bootstrapTable('resetWidth');
});
/*
 * @Description: 设备下拉列表点击事件 @param :
 */
$("#dispatchingfMacId").change(function(){
	var value = $("#dispatchingfMacId option:selected").text();
	var str = value.substring(0,4);
	if(str == "数控锯床"){
		$("#fDiscountPieceRate").val(30);
	}else if(str == "数控车床"){
		$("#fDiscountPieceRate").val(75);
	}else if ($('#dispatchingfOperName').val().indexOf('台架') != -1) {
//		$('#fDiscountPieceRate').val(20);
	}else{
		$("#fDiscountPieceRate").val(100);
	}
})

$(window).resize(function () {
　　$("#planTable").bootstrapTable('resetView');
});
/*
 * @Description: 批量派工按钮点击事件 @param :
 */
$("#batchDispatching").click(function(){
	var datas = $('#planTable').bootstrapTable('getSelections');
	var pass = true;
// console.log(datas)
	if(datas.length == 0){
		swal_Tips("请选择要派工的任务！");
		pass = false;
		return false;
	}
	var fOperName = datas[0].fOperName;// 工序名称
	var fDepId = datas[0].fDepId;// 工作中心ID
	var fMacGroupId = datas[0].fMacGroupId;// 设备组ID
	var fIsFirstOp = datas[0].fIsFirstOp;// 是否第一道工序
	for(var z= 1;z<datas.length;z++){
		var fOperNameX = datas[z].fOperName;
		var fDepIdX = datas[z].fDepId;// 工作中心ID
		var fMacGroupIdX = datas[z].fMacGroupId;// 设备组ID
		var fIsFirstOpX = datas[z].fIsFirstOp;// 是否第一道工序
		if(fOperNameX != fOperName){
			swal_Tips("您选择的任务不是同道工序，请重新选择！[批量派工的前提条件为同一产品、同一工作中心、同一工序、同一设备组、工序的可派工数大于0]");
			pass = false;
			return false;
		}
		if(fDepIdX != fDepId){
			swal_Tips("您选择的任务不是同个工作中心的，请重新选择！[批量派工的前提条件为同一产品、同一工作中心、同一工序、同一设备组、工序的可派工数大于0]");
			pass = false;
			return false;
		}
		if(fMacGroupIdX != fMacGroupId){
			swal_Tips("您选择的任务是不同个设备组的，请重新选择！[批量派工的前提条件为同一产品、同一工作中心、同一工序、同一设备组、工序的可派工数大于0]");
			pass = false;
			return false;
		}
		if(fIsFirstOpX != fIsFirstOp){
			swal_Tips("您选择的任务不都是首道工序或中间工序，请重新选择！[批量派工的前提条件为同一产品、同一工作中心、同一工序、同一设备组、工序的可派工数大于0]");
			pass = false;
			return false;
		}
	}
	if(pass){
		loadData(datas[0],"#batchDispatchingForm");
		$("#batchDispatchingfStartTime").val(jeDate.timeStampDate(Math.round(new Date()/1000),'YYYY-MM-DD'));
		$("#batchDispatchingfEndTime").val(jeDate.timeStampDate(Math.round(new Date()/1000)+86400,'YYYY-MM-DD'));
		if(datas[0].fIsFirstOp == 1){// 如果是第一道工序
			$("#showSFLL").show();
			$("#batchDispatchingfIsOutStock").prop('checked',true);
// firstAvenue = true;
		}else{
			$("#showSFLL").hide();
			$("#batchDispatchingfIsOutStock").prop('checked',false);
		}
		var getId = getgetselectionData("planTable","id");
		getIds = getId.join(",");
// console.log(getIds)
		$("#batchDispatchingModal").modal('show');
	}
});
/*
 * @Description: 批量派工模态框显示后操作：加载设备列表 @param :
 */
$('#batchDispatchingModal').on('shown.bs.modal', function () {
	initMachine(3);
// $("#dispatchingfTargetQty").focus();
	if ($('#batchDispatchingfOperName').val().indexOf('台架') != -1) {
		$('#batchDispatchingfDiscountPieceRate').val(20);
	}else{
		$("#batchDispatchingfDiscountPieceRate").val(100);
	}
});
/*
 * @Description: 派工模态框隐藏后操作：清空数据 @param :
 */
$('#batchDispatchingModal').on('hidden.bs.modal', function () {
	$(".clean_c").val('');// 清空派工表里的数据
	$("#batchDispatchingfMacId").selectpicker('refresh');
});
/*
 * @Description: 批量派工模态框确定按钮点击事件 @param :
 */
$("#confirm_plpg").click(function(){
	var fIsOperInStock = 0;
	var fIsOutStock = 0;
	var fMacId = $("#batchDispatchingfMacId").val();// 获取设备ID
	var batchDispatchingfDiscountPieceRate = parseFloat($("#batchDispatchingfDiscountPieceRate").val());//定额折扣
	var fStartTime = new Date($('#batchDispatchingfStartTime').val().replace(/-/g,   "/"));// 开工时间
	var fEndTime = new Date($('#batchDispatchingfEndTime').val().replace(/-/g,   "/"));// 完工时间
	var fMachine = $('#batchDispatchingfMacId option:selected').text();
	if(batchDispatchingfDiscountPieceRate > 1000 || batchDispatchingfDiscountPieceRate <0){
		swal_Tips('定额折扣应为0~1000！');
		return false;
	}
	if(fStartTime == "Invalid Date"){
		swal_Tips('请选择开工时间！');
		return false;
	}
	if(fEndTime == "Invalid Date"){
		swal_Tips('请选择完工时间！');
		return false;
	}
	if(fMacId == ""){
		swal_Tips('请选择设备！');
		return false;
	}
	if($('#batchDispatchingfIsOperInStock').is(':checked')) {
		fIsOperInStock = 1;
	}
	if($('#batchDispatchingfIsOutStock').is(':checked')) {
		fIsOutStock = 1;
	}
// console.log($("#batchDispatchingModal :text,#batchDispatchingModal
// select,#batchDispatchingModal :hidden").not($('.noPass')).serializeObject() +
// '&' + $.param({'fIsOutStock': fIsOutStock})
// + '&' + $.param({'fIsOperInStock': fIsOperInStock}) + '&' +
// $.param({'fStartTime': fStartTime}) + '&' + $.param({'fEndTime': fEndTime}) +
// '&' + $.param({'id': getIds}) + '&' + $.param({'fMachine': fMachine}))
	showSwal(
		'派工',
		'您确认派工吗？',
		'是的，确定派工',
		function(result){// isConfirm 点击确定按钮，参数true/false
			if(result.value){
				showLoading();// 显示正在提交中
				$.ajax({
					url : pathUrl("/dispatch/insertBatch.action"),
					type : "POST",
					dataType : "JSON",
					data :$("#batchDispatchingModal :text,#batchDispatchingModal select,#batchDispatchingModal :hidden").not($('.noPass')).serializeObject() + '&' + $.param({'fIsOutStock': fIsOutStock})
					 + '&' + $.param({'fIsOperInStock': fIsOperInStock}) +  '&' + $.param({'fStartTime': fStartTime}) +  '&' + $.param({'fEndTime': fEndTime}) +  '&' + $.param({'ids': getIds}) +  '&' + $.param({'fMachine': fMachine}),
					success : function(data) {
// console.log(data)
						if (data.code == "0000") {
							$("#batchDispatchingModal").modal('hide');
							$('#planTable').bootstrapTable('refresh');
// initPlanTable();			 
							swal_Tips_Short(data.message);
							console.log(data.dataset);
							var ids=data.dataset;
							ids=ids.replace(/,/g,"_");
							console.log(ids);
							window.open(pathUrl("DSS?fDisIds="+ ids+"&fDisnames="+encodeURIComponent(
									$('#batchDispatchingfOperName').val())))
							
// window.open(pathUrl("DS?fDisId="+ data.dataset+"&type=0"));
						} else if (data.code == "9999") {
							swal_Tips(data.message);
						}
					},
					error : function(request) {
						swal_Tips_Error();
					},
					complete : function () {
					}
				});
			}
		}
	);
});
/*
 * @Description: 模态框的查询操作 @param :
 */
$("#query_modify").click(function(){
	initPiesTable();
});
//改制模态框表1
function gaiTable(){
	$('#gaiTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("icmoEntry/findByCondition.action"),//请求后台的URL
		height : 300,//行高
		method : "POST",
		striped : true,
		cache : false,
//		editable:false,//开启编辑模式
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
		pagination : true,
		pageNumber : 1,
		pageSize : 10,
		pageList : [ 5, 15, 30, 60, 'ALL' ],
		showExport: true,
		exportDataType: "allServer",
		queryParams : function(params) {//传递参数
			var data= {};
			data.offset = params.offset;
			data.row = params.limit;
			data.fBillNo = $("#fbillno").val();
			data.fNumber = $("#fNumber").val();
			data.fName = $("#fName").val();
			data.fModel = $("#fModel").val();
			return data;
		},
		dataType : 'JSON',//数据类型
		uniqueId : "id",//每一行的唯一标识，一般为主键列
		columns : [{
			field : 'fBillNo',
			align : 'center',
			valign: 'middle',
			sortable : true,
			title : '任务单号',
			edit:false
		},{
			field : 'fNumber',
			align : 'center',
			valign: 'middle',
			sortable : true,
			title : '产品代码',
			edit:false
		},{
			field : "fName",
			align : 'center',
			valign: 'middle',
			title : '产品名称',
			edit : false
		}, {
			field : "fModel",
			align : 'center',
			valign: 'middle',
			title : '规格型号',
			edit : false
		}, {
			field : "fQty",
			align : 'center',
			valign: 'middle',
			title : '任务</br>数量',
			edit : false
		}],
		onDblClickRow : function(row, $element) {//行单击
			$('.success').removeClass('success');// 去除之前选中的行的，选中样式
			$($element).addClass('success');// 添加当前选中的 success样式用于区别
			_fIcmoIdss = row.fIcmoId;//任务单内码
			$('#gaiTable').bootstrapTable('refresh');
			xuTable();
			$('#fnotess').val('');
		},
		onLoadSuccess:function(row, $element) {
			console.log(row);
		}
	});
}
//改制模态框表2
function xuTable(){
	$('#xuTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("card/findByCondition.action"),//请求后台的URL
		height : 300,//行高
		method : "POST",
		striped : true,
		cache : false,
//		editable:false,//开启编辑模式
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
		pagination : true,
		pageNumber : 1,
		pageSize : 10,
		pageList : [ 5, 15, 30, 60, 'ALL' ],
		showExport: true,
		exportDataType: "allServer",
		buttonsAlign:"right",  //按钮位置
		queryParams : function(params) {//传递参数
			var data= {};
			data.offset = params.offset;
			data.row = params.limit;
			data.fIcmoId = _fIcmoIdss;
			return data;
		},
		dataType : 'JSON',//数据类型
		uniqueId : "id",//每一行的唯一标识，一般为主键列
		columns : [{
			field : 'fOperSN',
			align : 'center',
			valign: 'middle',
			sortable : true,
			title : '工序号',
			edit:false
		},{
			field : "fOperName",
			align : 'center',
			valign: 'middle',
			title : '工序名称',
			edit : false
		}],
		onClickRow : function(row, $element) {//行单击
			$("#fnotess").val(row.fNote);
		},
		onDblClickRow : function(row, $element) {//行单击
			$('.success').removeClass('success');// 去除之前选中的行的，选中样式
			$($element).addClass('success');// 添加当前选中的 success样式用于区别
			_dstFIcmoId = row.fIcmoId;
			_dstCardId = row.id;
			
		},
		onLoadSuccess:function(row, $element) {
			console.log(row);
		}
	});
}
/*
 * @Description: 查询按钮点击事件
 * @param : 
 */
$("#cx").click(function(){
	reset();
});
/*
 * @Description: 重置按钮点击事件
 * @param : 
 */
$("#cz").click(function(){
	$(".clean_c").val("");
	reset();
});
/*
 * @Description: 重置
 * @param :
 */
function reset(){
	gaiTable();
	xuTable();
}
/*
 * @Description: 改制确认
 * @param : 
 */

$("#gaiconfirm").click(function() {
	    console.log({'srcFIcmoId' : _srcFIcmoId,"dstFIcmoId" :_dstFIcmoId ,"srcCardId" :_srcCardId,"dstCardId" : _dstCardId,'fRestructQty' : _fRestructQty});
		$.ajax({
			url : pathUrl("restruct/icmoRestruct.action"),
			type : "POST",
			dataType : "JSON",
			data : {
				'srcFIcmoId' : _srcFIcmoId,"dstFIcmoId" :_dstFIcmoId ,"srcCardId" :_srcCardId,"dstCardId" : _dstCardId,'fRestructQty' : _fRestructQty
			},
			success : function(data) {
				if (data.code == "0000") {
					swal_Tips_Short(data.message);
					$("#inputCardModal").modal('hide');
					$('#gainumbermodal').modal('hide');
					$('#newProcessTable').bootstrapTable('refresh');
				} else if (data.code == "9999") {
					swal_Tips(data.message);
				}
			},
			error : function(request) {
				swal_Tips_Error();
			},
			complete : function () {
			}
		});
});
//改制数量确认按钮
$("#gainumberconfirm").click(function() {
//	$('#gainumbermodal').modal('hide');
	_fRestructQty=parseInt($("#gainumber").val());
	_fIcmoIdss= -1;
	$('#inputCardModal').modal('show');
	$('#gaiTable').bootstrapTable('refresh');
	$("#gainumber").val("");
});